package com.docmgmt.mvp.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 对话列表展示VO
 *
 * @author Dora
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DialogVO {

    /**
     * 对话ID
     */
    private Long id;

    /**
     * 对话UUID
     */
    @JsonProperty("dialogId")
    private String dialogId;

    /**
     * 对话标题
     */
    private String title;

    /**
     * 查询范围类型：global/kb/folder/file
     */
    @JsonProperty("scopeType")
    private String scopeType;

    /**
     * 范围ID
     */
    @JsonProperty("scopeId")
    private Long scopeId;

    /**
     * 范围名称（前端显示用）
     */
    @JsonProperty("scopeName")
    private String scopeName;

    /**
     * 总轮次数
     */
    @JsonProperty("totalRounds")
    private Integer totalRounds;

    /**
     * 总Token消耗
     */
    @JsonProperty("totalTokensUsed")
    private Integer totalTokensUsed;

    /**
     * 最后查询时间
     */
    @JsonProperty("lastQueryTime")
    private LocalDateTime lastQueryTime;

    /**
     * 状态：active/archived/deleted
     */
    private String status;

    /**
     * 创建时间
     */
    @JsonProperty("createdAt")
    private LocalDateTime createdAt;

    /**
     * 更新时间
     */
    @JsonProperty("updatedAt")
    private LocalDateTime updatedAt;

    /**
     * 最后一条问题（预览用）
     */
    @JsonProperty("lastQuestion")
    private String lastQuestion;

    /**
     * 最后一条答案（预览用）
     */
    @JsonProperty("lastAnswer")
    private String lastAnswer;
}
